import zmail
from logzero import logger
from Common import Config


def send_mails(file_name: str = None):
    """发送邮件"""
    # 使用发送邮件的账号和密码:密码是授权码不是邮箱登陆密码
    server = zmail.server(Config.smtp_login_name, Config.smtp_login_passwd)
    # 发送邮件内容
    if file_name:
        # 读取html文件
        with open(file_name, "r", encoding="utf-8") as f:
            content_html = f.read()
    else:
        content_html = ''
    mail_content = {
        "subject": "冒烟测试",  # 邮件标题
        "content_text": content_html,  # 邮件内容,邮件正文
        # "attachments": "userdata.xlsx",  # 邮件附件  直接填写文件路径
    }

    # 发送邮箱
    try:
        # 发送多人并抄送多人
        server.send_mail(Config.get("sendlist"),
                         mail_content,
                         cc=Config.cs_list)

        logger.info("邮件发送成功")
    except Exception as e:
        logger.error(f"邮件发送失败: {e}")


def get_mail():
    """接收邮件"""
    # 使用发送邮件的账号和密码:密码是授权码不是邮箱登陆密码
    server = zmail.server(Config.smtp_login_name, Config.smtp_login_passwd)
    # 收邮件
    mail = server.get_latest()


if __name__ == '__main__':
    send_mails()